package com.clouddms.repository;

import com.clouddms.entity.Admin;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.Optional;

/**
 * 管理员数据访问层接口
 */
@Repository
public interface AdminRepository extends JpaRepository<Admin, Long> {

    /**
     * 根据用户名查找管理员
     * @param username 用户名
     * @return 管理员对象
     */
    Optional<Admin> findByUsername(String username);

    /**
     * 根据邮箱查找管理员
     * @param email 邮箱
     * @return 管理员对象
     */
    Optional<Admin> findByEmail(String email);

    /**
     * 检查管理员用户名是否存在
     * @param username 用户名
     * @return 是否存在
     */
    boolean existsByUsername(String username);

    /**
     * 检查管理员邮箱是否存在
     * @param email 邮箱
     * @return 是否存在
     */
    boolean existsByEmail(String email);
}